1. Field of the Invention
The present invention relates to an event monitoring, detection, and notification system. More particularly, the present invention relates to accessing data associated with the detection, notification, and resolution of events.
2. Description of the Related Art
Modern business enterprises rely heavily on a wide variety of information technology, including both software and hardware, to implement business strategies, to allocate resources, to track the execution of business processes, and to provide an interface for communication with customers, vendors and their own personnel. These systems will hereinafter be referred to as xe2x80x9centerprise systems.xe2x80x9d Business processes executed by a business enterprise may be executed across enterprise system boundaries as well as within enterprise system boundaries.
Even during standard, non-peak operating conditions, the quantity of data that is transmitted by an enterprise system can be enormous. This data may be received by a business enterprise or produced by a business enterprise for internal use as well as for transmission outside the business enterprise system. However, regardless of the quantity of the data that is produced or transmitted, the quality of that data can vary greatly in content and importance. This variance can occur for a variety of reasons. For example, the data that is transferred among various entities within a business enterprise boundary or outside the business enterprise boundary may vary with the needs of those entities receiving or requesting the data. With the vast amount of data transmitted in enterprise systems and the varying content and importance of this data, detection of problems solely from that data is a complicated task. As a result, existing and potential problems that could arise during the execution of business processes dependent upon that data could go undetected. It would therefore be desirable if the content and importance of the data to the business enterprise producing and/or receiving the data could be indicated in the data transmitted by the enterprise system. Moreover, it would be beneficial if a mechanism for monitoring and detecting conditions based upon the transmitted data could be established.
Existing enterprise systems enable business enterprises to coordinate their internal and external activities in a variety of ways, including data transfer, analysis and processing. More particularly, such enterprise systems produce a flow of data that is used by business enterprises for tasks as diverse as the implementation of strategies for internal use such as accounting and the allocation of resources, and strategies for use across enterprise system boundaries such as order processing systems. Once received by the appropriate business or entity, the data is often parsed or analyzed for the information that is pertinent to the desired function to be performed by that entity. Unfortunately, this parsing and analysis is a time-consuming one, often requiring additional personnel to perform data collection and analysis.
One example of the data processing typically performed by many businesses is the processing of orders. Many businesses that supply products to consumers or retailers use order-processing systems to receive and process data associated with incoming orders. However, such order processing systems have limitations. As a result, additional software is often purchased or additional personnel may be hired to monitor its inventory to ensure that it can satisfy its incoming orders. Similarly, in order to monitor the timeliness of the processing of incoming orders, additional software products or personnel may be required to ensure that the ship dates fall within the expected or promised ship dates. Thus, additional resources are often required to ensure that ordered products are shipped in a timely manner, as well as to detect when products have not or cannot be shipped in a timely manner. As a result, business expenses that may be incurred to support such data analysis are not insubstantial. It would therefore be desirable if such additional resources typically required for analysis of data could be reduced or eliminated.
One method commonly used by businesses to track the data that is pertinent to their business is through the generation of reports. For instance, reports commonly generated often involve the use of spreadsheets. Although such report generation is a simple tool that may be easily adapted for all businesses, once the reports are generated, personnel hired by the business must manually review the data. As one example, the data within a single report may be correlated with other data in the same report. As another example, data within one report may need to be correlated with another report or multiple reports. Such manual interpretation of data is time consuming and requires numerous man-hours, increasing the business expenses required to successively operate a business. Moreover, such manual interpretation is at risk of misinterpretation due to the likelihood of human error. Accordingly, it would be preferable if the retrieval and monitoring of data could be automated.
Another problem with the generation of reports is that such reports merely reformat data for simplified viewing and data comparison. Moreover, since such report generation solely accomplishes the reformatting of data, those reports cannot be used for purposes of subsequent monitoring of that data. In other words, a report is a snapshot of data at a single point in time. More particularly, data values that are imported for purposes of a report will be values that are important to that business. However, data values change over time, and a single report cannot reflect such value changes. Thus, the mere generation of a report cannot be used for subsequent monitoring of that data as it changes over time. Even if multiple reports were generated, this does not enable or simplify the monitoring of the data illustrated in the generated reports. It would therefore be desirable if a mechanism were designed to enable the automated monitoring of valuable business data. Moreover, it would be beneficial if such a system could be customized for use by any business or industry.
In addition to the monitoring of valuable business data, it would be desirable if the data produced during the monitoring process could be securely stored. More particularly, it would be beneficial if security access could be established prior to providing data that is output as a result of the monitoring process. Similarly, it would be desirable if security access could be verified prior to modifying data used to track situations requiring resolution. Although some security features have been implemented with respect to existing monitoring and detection systems, such security features are traditionally not configurable with respect to those events that are to be monitored and detected. Moreover, these security features typically do not vary with the data for which access is being requested. Accordingly, it would be desirable if security features could be configured to correlate with those events that are to be monitored. In addition, it would be beneficial if access privileges could be varied with the data being requested, such as information being stored to track the event detection, monitoring, and resolution process.
In view of the above, it would be desirable if a business enterprise could attach a business context to data being transmitted by a business enterprise system to indicate the content and/or importance of the data. In addition, it would be beneficial if data transmitted by a business enterprise system could be monitored to detect various events deemed important to the business enterprise transmitting the data, such as an entity (e.g., department or group) within the business enterprise. Similarly, it would be desirable if the data transmitted by the business enterprise system could be monitored to detect various events deemed important to an entity (e.g., customer) external to the business enterprise system that is expecting to receive the data, products, services, or other information. Moreover, it would be beneficial if the data produced and tracked during the monitoring process could be securely stored for access by privileged parties.
The present invention enables access to system resources to be limited (e.g., granted or denied) in an event detection system. This is accomplished, in part, through a set of access information. The access information may simply be a set of access rules, but may also include further information that identifies applicability of access rules to different groups or entities.
In accordance with one embodiment, methods and apparatus for providing access in an event detection and tracking system are disclosed, where the event detection and tracking system is adapted for storing data associated with a plurality of detected events. An access request for access to at least a portion of data associated with one of the plurality of detected events is received and access information associated with the access request is obtained. It is then determined from the access information whether to provide access to at least a portion of the data associated with one of the plurality of detected events. When it is determined from the access information that access to at least a portion of the data is to be provided, access is provided in accordance with the access information.
In accordance with one embodiment, the access information may include a variety of security access rules. For instance, one set of rules may relate to the access of all data associated with a detected event, while another set of rules may relate to the access of specific portions of data associated with a detected event. Moreover, a rule may restrict access to the data or a portion thereof based upon the content of a portion of the data. In this manner, a content-based security system may be implemented.
Access rules may be implemented to support a variety of security features. In addition, various forms of access may be desirable. For instance, access may be provided in the form of read or write access. In addition each rule or set of rules may provide different levels of security. For instance, security may differ with respect to a single individual user, a security group corresponding to multiple users, or all individuals employed by a company. The access information may be associated with a user or group, and therefore the access information may include further preferences associated with the user or group.
In accordance with another aspect of the invention, a security feature enables monitoring configurations to be accessed in accordance with access information. For instance, those events that are to be monitored and conditions that are to be detected may be configurable, and it therefore may be preferable to limit access to such monitoring configurations.
In accordance with yet another aspect of the invention, security features are provided with respect to events that are configurable. For instance, it may be desirable to limit access to data that is output as the result of the monitoring process as well as data that is used during the monitoring process. Thus, this data may include data related to events as well as conditions that are configured. More particularly, each event may be defined by a set of event attributes, while each value for which data is to be monitored may be defined by a metric value associated with an event. As one example, data that is accessed may include one or more event attributes (e.g., that may be used to define an event) as well as values for those event attributes. Accordingly, access to data associated with configurable events may be limited according to information stored in relation to those configured events.
These and other features of the present invention will be described in more detail below in the detailed description of the invention and in conjunction with the following figures.